#ifndef _ACHIVECOUNTER_H_
#define _ACHIVECOUNTER_H_
#include "MgrBase.h"
#include "SimpleRefection.h"
class AchiveCounter:public ReflectionBase
{
	DECL_REFLECTION(AchiveCounter,"../../config/AchiveCounter.xml");
public:
	int32			m_iID;
	std::string		m_sDisplayName;
	int32			m_iEventClassID;
	std::string		m_sParam1;
	ECompare		m_eCompare1;
	int32			m_iCompValue1;

	std::string		m_sParam2;
	ECompare		m_eCompare2;
	int32			m_iCompValue2;

	std::string		m_sParam3;
	ECompare		m_eCompare3;
	int32			m_iCompValue3;

	EAchiveCountOPt m_eSuccessOpt;
	std::string		m_sSuccessParam;

	EAchiveCountOPt m_eFailedOpt;
	std::string		m_sFailedParam;

	rewrite virtual void OnArchieveReaded();
private:
};

typedef DefMangerTpl<AchiveCounter> __AchiveCounterManager; 
class AchiveCounterManager:public __AchiveCounterManager
{
public:
	static AchiveCounterManager& Instance(){static AchiveCounterManager _instance;return _instance;	}
	virtual void OnArchieveReaded();
private:
	AchiveCounterManager(){}
};

#endif
/////////////////////////////////////////
